When finally block gets executed in Java